import * as domain from "node:domain";

export interface ContrastVO {
  /**
   * 主键id
   */
  id: string | number;
  /**
   * 预算部门编码
   */
  deptCode: string;

  /**
   * 预算部门名称
   */
  deptName: string;

  /**
   * 用友部门编码
   */
  friendDeptCode: string;

  /**
   * 用友部门名称
   */
  friendDeptName: string;

  /**
   * 院区
   */
  yardName: string;

  /**
   * 对照月份
   */
  contrastDate: string;

}

export interface ContrastForm extends BaseEntity {
  /**
   * 主键id
   */
  id?: string | number;

  /**
   * 预算部门编码
   */
  deptCode?: string;

  /**
   * 预算部门名称
   */
  deptName?: string;

  /**
   * 用友部门编码
   */
  friendDeptCode?: string;

  /**
   * 用友部门名称
   */
  friendDeptName?: string;

  /**
   * 院区
   */
  yardName?: string;

  /**
   * 对照月份
   */
  contrastDate?: string;

}

//主列表查询条件
export interface ContrastQuery {

  /**
   * 预算部门编码
   */
  deptCode?: string;

  /**
   * 对照月份
   */
  contrastDate: string;

  deptName: string;
}


export interface InheritData {
  /**
   * 继承月份
   */
  inheritDate: string;
  /**
   * 目标月份
   */
  targetDate: string;
  /**
   * 类型
   */
  type?: number;

}

/**
 * 预算部门树结构
 */
export interface DeptListTreeVO {

  id: number;

  deptName: string;

  deptCode: string;

  level: number;

  sorted: number;

  children: DeptListTreeVO[];

}


export interface AddListDTO {

  deptCode: string;

  deptName: string;

  contrastDate: string;

  list: AddListFriendDTO[];

}

export class AddListFriendDTO {

  friendDeptCode: string;

  friendDeptName: string;

  yardName?: string;

  constructor(friendDeptCode: string, friendDeptName: string, yardName?: string) {
    this.friendDeptCode = friendDeptCode;
    this.friendDeptName = friendDeptName;
    this.yardName = yardName;
  }
}







